Class Analysis of Object-Oriented Programs through Abstract Interpretation
نویسندگان
چکیده
منابع مشابه
Logic Programs as Compact Denotations
This paper shows how logic programs can be used to implement the transition functions of denotational abstract interpretation. The logic variables express regularity in the abstract behaviour of commands. The technique has been applied to sign, class and escape analysis for object-oriented programs. We show that the time and space costs using logic programs for these analyses are smaller than t...
متن کاملCompile-Time Analysis of Object-Oriented Programs
Generation of efficient c d e for ob ject-orient4 programs requir~ knowledge of object Iifetimes and method bindings. For object-oriented Ianguages that have automatic storqge management and dynamic look-up of methods, the compiler must obtain such knowledge by performing static analysis of the source code. We present a.n analysis algorithm which discovers the potential classes of each object i...
متن کاملClass invariants as abstract interpretation of trace semantics
We present a generic framework for the automatic and modular inference of sound class invariants for class-based object-oriented languages.We define a trace-based semantics for classeswhich considers all possible orderings, with all possible arguments, of invocations of all the methods of a class. We prove a correspondence theorem between such a semantics and a generic, trace-based, semantics f...
متن کاملInterprocedural Control Flow Analysis
Control Flow Analysis is a widely used approach for analysing functional and object oriented programs. Once the applications become more demanding also the analysis needs to be more precise in its ability to deal with mutable state (or side-effects) and to perform polyvariant (or context-sensitive) analysis. Several insights in Data Flow Analysis and Abstract Interpretation show how to do so fo...
متن کاملProperty Based Dynamic Slicing of Object Oriented Programs
Received Jun 12 th , 2015 Revised Aug 20 th , 2015 Accepted Aug 26 th , 2015 Slicing is used for program analysis. It the process of extracting the statements of a program that are relevant to a given computation. Static slicing generates slices for all possible execution of a program helping in program understanding, verification, and maintenance and testing. Dynamic slices are smaller in size...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2001